package com.zx.erp.sys.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zx.erp.sys.bean.Module;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author 作者信息
 * @since 2021-11-10
 */
public interface ModuleMapper extends BaseMapper<Module> {
    /**
     * 查找用户的所有模块
     * @param jobId   根据用户 的职位id查找
     * @return
     */
    List<Module> selectAllModule(Integer jobId);
    /**
     * 根据模块Id查找模块
     * @param moduleId   模块id查找
     * @return
     */
    Module selectOneModule(Integer moduleId);
    /**
     * 查找用户的所有父模块
     *@param jobId    根据用户 的职位id查找
     * @return
     */
    List<Module> findAllParentModule(Integer jobId);
    List<Module> findAllParentModuleNoParameter();
    /**
     * 分页查询所有模块
     * @return
     */
    Page<Module> pageQuery(IPage<Module> page, Module module);
    /**
     * 添加模块
     * @return
     */
    public boolean addNewModule(Module module);
    /**
     * 修改模块
     * @return
     */
    public boolean doUpdate(Module module);
    /**
     * 修改模块状态
     * @return
     */
    public boolean doState(Integer moduleId,Integer moduleState);
}
